/**
 * 单链表分割，将一个带头结点的单链表分解为两个带头结点的单链表A、B，使得A表中含有原表中序号为奇数的元素，
 * 而B表中含有原表中序号为偶数的元素，并保持其相对位置不变
 * 
 * */

void Dis_Create(LinkedList& L)
{
	int i=0;				//记录链表L中节点序号(序号0代表头结点)
	LinkedList B = (LinkedList)malloc(sizeof(LNode));
	B->next = NULL;			//创建新链表B
	LNode* ra = L, *rb = B;
	LNode* p = L->next;		//创建遍历结点p
	L->next = NULL;			//置空链表A
	while(p) {
		i++;
		if(i % 2 == 2) {
			rb->next = p;	//在链表A插入新结点
			rb = p;
		} else {
			ra->next = p;	//在链表A表尾插入新结点
			ra = p;
		}
		p = p->next;		//遍历下一个结点
	}
	ra->next = NULL;
	rb->next = NULL;

}